package com.sunyur.tailor.channel.service.inner.workflow.param;


import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * @description: 工作流同步审批进度参数
 * @author: wjh
 * @time: 2021/05/10 0023 19:23
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class WorkFlowSyncTaskParam implements Serializable {
    //审批信息
    private Instance instance;
    //审批完成进度
    private List<Task> completedTasks;
    //待审批的进度
    private List<Task> pendingTasks;


    /**
     * 流程进度对象
     */
    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    public static class Task implements Serializable {
        /**
         * 任务主键
         */
        private String taskId;
        /**
         * 节点名称
         */
        private String nodeName;
        /**
         * 节点名称
         */
        private String nodeKey;
        /**
         * 审批人code
         */
        private String approverCode;
        /**
         * 审批人名称
         */
        private String approverName;
        /**
         * 审批状态 1:通过，2:驳回 3:撤回 4:异常
         */
        private Integer processStatus;
        /**
         * 任务状态 0 进行中/1 已完成
         */
        private Integer taskStatus;
        /**
         * 留言
         */
        private String comment;
        /**
         * 处理时间
         */
        private Long processTime;

        /**
         * 1、会签  2、或签  不传则默认为或签
         */
        private Integer countersign;
    }
}
